package a.g;

import a.c.d;
import a.c.m;
import a.f.c.b;
import a.f.e.c;
import a.f.fd;
import a.f.h.i;
import a.f.h.k;
import a.f.qc;
import a.f.rc;
import a.f.vc;
import a.h.dc;
import a.h.nc;
import a.h.z;
import a.j.g;
import a.j.ig;
import a.j.tb;

public class x
  extends h
{
  private static final String q = "ORTHOGONAL_LAYOUTER";
  private static final String r = "GROUPING";
  private static final String s = "GROUP_LAYOUT_POLICY";
  private static final String t = "IGNORE_GROUPS";
  private static final String u = "LAYOUT_GROUPS";
  private static final String v = "FIX_GROUPS";
  private static final String w = "GROUP_LAYOUT_QUALITY";
  private static final String x = "LENGTH_REDUCTION";
  private static final String y = "STYLE";
  private static final String z = "USE_RANDOMIZATION";
  private static final String A = "USE_FACE_MAXIMIZATION";
  private static final String B = "USE_EXISTING_DRAWING_AS_SKETCH";
  private static final String C = "CROSSING_POSTPROCESSING";
  private static final String D = "PERCEIVED_BENDS_POSTPROCESSING";
  private static final String E = "ROUTE_MULTI_EDGES_IN_PARALLEL";
  private static final String F = "GRID";
  private static final String G = "NORMAL";
  private static final String H = "NORMAL_TREE";
  private static final String I = "UNIFORM_NODES";
  private static final String J = "BOX_NODES";
  private static final String K = "MIXED";
  private static final String L = "FIXED_MIXED";
  private static final String M = "FIXED_BOX_NODES";
  private static final String N = "MINIMUM_FIRST_SEGMENT_LENGTH";
  private static final String O = "MINIMUM_LAST_SEGMENT_LENGTH";
  private static final String P = "MINIMUM_SEGMENT_LENGTH";
  private static final String Q = "LAYOUT";
  private static final String R = "EDGE_LABEL_MODEL";
  private static final String S = "EDGE_LABELING";
  private static final String T = "LABELING";
  private static final String U = "GENERIC";
  private static final String V = "NONE";
  private static final String W = "INTEGRATED";
  private static final String X = "FREE";
  private static final String Y = "SIDE_SLIDER";
  private static final String Z = "CENTER_SLIDER";
  private static final String ab = "AS_IS";
  private static final String bb = "BEST";
  private static final String cb = "CONSIDER_NODE_LABELS";
  private final String[] db = { "NORMAL", "NORMAL_TREE", "UNIFORM_NODES", "BOX_NODES", "MIXED", "FIXED_MIXED", "FIXED_BOX_NODES" };
  private static final String[] eb = { "NONE", "INTEGRATED", "GENERIC" };
  private static final String[] fb = { "BEST", "AS_IS", "CENTER_SLIDER", "SIDE_SLIDER", "FREE" };
  public static boolean gb;
  
  public x()
  {
    super("ORTHOGONAL_LAYOUTER", "yFiles Layout Team", "Orthogonal Layouter");
    d(true);
  }
  
  public dc j()
  {
    dc localdc = new dc(a());
    z localz = new z(localdc);
    localdc.l("LAYOUT");
    localdc.a("STYLE", this.db, 0);
    localdc.a("GRID", 25).a(nc.y, new Integer(1));
    localdc.a("LENGTH_REDUCTION", true);
    localdc.a("USE_EXISTING_DRAWING_AS_SKETCH", false);
    localdc.a("CROSSING_POSTPROCESSING", true);
    localdc.a("PERCEIVED_BENDS_POSTPROCESSING", true);
    localdc.a("USE_RANDOMIZATION", true);
    localdc.a("USE_FACE_MAXIMIZATION", false);
    localdc.a("ROUTE_MULTI_EDGES_IN_PARALLEL", false);
    localdc.a("MINIMUM_FIRST_SEGMENT_LENGTH", 10.0D);
    localdc.a("MINIMUM_LAST_SEGMENT_LENGTH", 10.0D);
    localdc.a("MINIMUM_SEGMENT_LENGTH", 10.0D);
    localdc.l("LABELING");
    localdc.a("EDGE_LABELING", eb, 0);
    localdc.a("EDGE_LABEL_MODEL", fb, 0);
    localdc.a("CONSIDER_NODE_LABELS", false);
    localz.a("EDGE_LABELING", "NONE", "EDGE_LABEL_MODEL", true);
    z.t_ localt_ = localz.a("USE_EXISTING_DRAWING_AS_SKETCH", Boolean.FALSE);
    localz.a(localt_, localdc.k("CROSSING_POSTPROCESSING"));
    localz.a(localt_, localdc.k("PERCEIVED_BENDS_POSTPROCESSING"));
    localz.a(localt_, localdc.k("STYLE"));
    localz.a(localt_, localdc.k("USE_RANDOMIZATION"));
    localdc.l("GROUPING");
    String[] arrayOfString = { "LAYOUT_GROUPS", "FIX_GROUPS", "IGNORE_GROUPS" };
    localdc.a("GROUP_LAYOUT_POLICY", arrayOfString, 0);
    localdc.a("GROUP_LAYOUT_QUALITY", 1.0D, 0.0D, 1.0D);
    localz.a("GROUP_LAYOUT_POLICY", "LAYOUT_GROUPS", "GROUP_LAYOUT_QUALITY");
    return localdc;
  }
  
  public void n()
  {
    int j = f.p;
    boolean bool = f.o;
    dc localdc = i();
    a.f.h.j localj = new a.f.h.j();
    if (j == 0) {}
    switch (dc.a(this.db, localdc.h("STYLE")))
    {
    case 0: 
    default: 
      if (j == 0)
      {
        localj.c(0);
        if (!bool) {
          break;
        }
      }
      break;
    case 1: 
      if (j == 0)
      {
        localj.c(4);
        if (!bool) {
          break;
        }
      }
      break;
    case 2: 
      if (j == 0)
      {
        localj.c(1);
        if (!bool) {
          break;
        }
      }
      break;
    case 3: 
      if (j == 0)
      {
        localj.c(2);
        if (!bool) {
          break;
        }
      }
      break;
    case 4: 
      if (j == 0)
      {
        localj.c(3);
        if (!bool) {
          break;
        }
      }
      break;
    case 5: 
      if (j == 0)
      {
        localj.c(5);
        if (!bool) {
          break;
        }
      }
      break;
    case 6: 
      localj.c(6);
    }
    k localk1 = localj.s();
    localk1.a(localdc.f("MINIMUM_FIRST_SEGMENT_LENGTH"));
    localk1.b(localdc.f("MINIMUM_LAST_SEGMENT_LENGTH"));
    localk1.c(localdc.f("MINIMUM_SEGMENT_LENGTH"));
    localj.b(localdc.e("GRID"));
    localj.o(localdc.g("LENGTH_REDUCTION"));
    localj.l(localdc.g("CROSSING_POSTPROCESSING"));
    localj.m(localdc.g("PERCEIVED_BENDS_POSTPROCESSING"));
    localj.j(localdc.g("USE_RANDOMIZATION"));
    localj.k(localdc.g("USE_FACE_MAXIMIZATION"));
    localj.p(localdc.g("USE_EXISTING_DRAWING_AS_SKETCH"));
    localj.f(localdc.g("ROUTE_MULTI_EDGES_IN_PARALLEL"));
    g localg = e();
    if (j == 0) {}
    int i = localj.B() == 0 ? 1 : 0;
    String str = localdc.h("EDGE_LABELING");
    if ((j != 0) || (str.equals("INTEGRATED"))) {
      if (j != 0) {}
    }
    localj.i(i != 0);
    if ((j != 0) || (localdc.g("CONSIDER_NODE_LABELS"))) {
      if (j != 0) {}
    }
    localj.h(i != 0);
    if (j == 0)
    {
      if (!str.equals("GENERIC"))
      {
        if (j != 0) {
          break label463;
        }
        if (str.equals("INTEGRATED"))
        {
          if (j != 0) {
            break label463;
          }
          if (i == 0) {}
        }
      }
      else
      {
        a(str, localdc.h("EDGE_LABEL_MODEL"));
      }
    }
    else {
      if ((j == 0) && (!bool)) {
        break label481;
      }
    }
    label463:
    if ((j != 0) || ((!localdc.g("CONSIDER_NODE_LABELS")) || (i == 0))) {
      localj.c(false);
    }
    label481:
    Object localObject1 = localj;
    Object localObject2 = null;
    Object localObject3;
    if ((j != 0) || ((a.j.a.j.d(localg)) && (!localdc.j("GROUP_LAYOUT_POLICY").equals("IGNORE_GROUPS"))))
    {
      localObject3 = null;
      if (localdc.j("GROUP_LAYOUT_POLICY").equals("FIX_GROUPS"))
      {
        localObject3 = new b();
        ((b)localObject3).a((byte)3);
        localj.a((vc)localObject3);
        localObject2 = localObject3;
      }
      else
      {
        i locali = new i();
        k localk2 = locali.t();
        localk2.a(localdc.f("MINIMUM_FIRST_SEGMENT_LENGTH"));
        localk2.b(localdc.f("MINIMUM_LAST_SEGMENT_LENGTH"));
        localk2.c(localdc.f("MINIMUM_SEGMENT_LENGTH"));
        locali.j(localj.u());
        locali.i(localj.t());
        locali.c(localj.l());
        locali.a(localdc.e("GRID"));
        locali.a(localdc.f("GROUP_LAYOUT_QUALITY"));
        locali.f(localdc.g("ROUTE_MULTI_EDGES_IN_PARALLEL"));
        localObject1 = locali;
      }
      try
      {
        a((rc)localObject1);
        if (j != 0) {}
      }
      finally
      {
        if (localObject2 != null) {
          localj.c(localObject2);
        }
      }
    }
    else
    {
      a((rc)localObject1);
    }
    if (str.equals("GENERIC"))
    {
      localObject3 = new c();
      ((c)localObject3).f(false);
      ((c)localObject3).g(true);
      ((c)localObject3).h(true);
      ((c)localObject3).a(new qc());
      ((c)localObject3).doLayout(localg);
    }
    e().gb();
  }
  
  void a(String paramString1, String paramString2)
  {
    int k = f.p;
    boolean bool = f.o;
    if ((k != 0) || (!paramString1.equals("NONE")))
    {
      if (k != 0) {
        break label41;
      }
      if (!paramString2.equals("AS_IS")) {}
    }
    else
    {
      return;
    }
    label41:
    byte b = 6;
    if (k == 0) {
      if (paramString2.equals("CENTER_SLIDER"))
      {
        b = 5;
        if ((k == 0) && (!bool)) {
          break label98;
        }
      }
    }
    if ((k != 0) || ((paramString2.equals("FREE")) || ((k != 0) || (paramString2.equals("BEST"))))) {
      b = 4;
    }
    label98:
    g localg = e();
    m localm = localg.w();
    label224:
    label246:
    do
    {
      if (!localm.e()) {
        break;
      }
      d locald = localm.a();
      tb localtb = localg.t(locald);
      int i = 0;
      do
      {
        ig localig;
        int j;
        do
        {
          if (i >= localtb.V()) {
            break;
          }
          localig = localtb.d(i);
          localig.e(b);
          j = localig.b().b();
        } while (bool);
        if (b == 5)
        {
          if (k != 0) {
            break label224;
          }
          if (j != 8)
          {
            a(localig, (byte)8);
            if (k != 0) {
              continue;
            }
            if (!bool) {
              break label246;
            }
          }
        }
        if (k == 0)
        {
          if (b == 6)
          {
            if (k != 0) {
              continue;
            }
            if (j == 8) {
              a(localig, (byte)32);
            }
          }
          i++;
        }
      } while (!bool);
      localm.f();
    } while (!bool);
  }
  
  static void a(ig paramig, byte paramByte)
  {
    fd localfd1 = paramig.b();
    if ((f.p != 0) || (localfd1.b() != paramByte))
    {
      fd localfd2 = new fd(localfd1);
      localfd2.b(paramByte);
      paramig.a(localfd2);
    }
  }
}



/* Location:           E:\idea\

 * Qualified Name:     a.g.getDefaultLicenseInfoEx

 * JD-Core Version:    0.7.0.1

 */